学习触发器,边缘触发器的基础知识。
可以参照D触发器的进化之路这篇文章,讲的比较清楚。
《编码》--- 触发器可以保持信息,可以记住最近一次是哪个开关先闭合的。
RS触发器
使用两个或非门或者与非门就可以构成最基本的RS锁存器。
这个电路的状态表如下图:
R | S | Q(n+1) |
---|---|---|
1 | 0 | 1 |
0 | 1 | 0 |
1 | 1 | Q(n) |
0 | 0 | 不稳,该种情况需要避免出现 |
这种电路的缺点是:
- 能控制存储的对象,但是有非法态
- 整个系统不受控,一直处在工作状态
在输入端加入时钟控制功能,RS锁存器就变成了RS触发器。
使用两个或门的输出作为RS触发器的输入,当中间的引脚为1,则自动屏蔽输入,(或门有一个1则输出肯定为1,此时的RS触发器处于保持状态)
中间的引脚可以作为时钟信号的输入,插入时钟控制信号就可以避免刚刚说到的第二个缺点。
PS: 在上面那个或门的输出那里再插入一个或门,引出一个额外的输出端口作为清零端口。
D触发器
由于RS触发器拥有两个输入端口(R/S),为了避免这种情况,直接使用一个非门保证RS触发器的输入肯定是合法的。
将上面的电路进行封装,就变成了常见的电平触发的D触发器也称为DFF(D Filp-Flop)。在时钟信号为低电平时可以通过控制端口D改变保存的值,时钟信号为高电平时则进入所存状态。
将两个DFF串联,时钟信号通过一个非门相连,就构成了电平触发的D触发器。
第一个传输数据的时候,第二个D触发器保持
第二个传输数据的时候,第一个触发器保持,
最后的结果就是,只在边沿触发的那一刻传输数据!
分频器
将DFF的
输出的模型如下,可以看到Q的输出频率为输入Clk 的
倍频器
DFF和与非门配合就可以实现2倍频电路。
行波计数器
通过将DFF进行串联, 除了组成分频器外,因为串联一个DFF输出的频率就是原来频率的 1/2。不同分频器当前的输出作为一个二进制数的数的一位,这个二进制数就代表了CLK 脉冲产生的个数
该电路的波形如下,将波形所代表的电平转化为十进制数就得到了Clk时钟的脉冲计数。